XML-Scripting mit E4X

Javascript erlebt derzeit dank der AJAX-Technologie so etwas wie eine Wiederbelebung. Dieser Artikel beschreibt, wie man in Java einen Allzweck-XML-Prozessor schreibt und diesen dann mithilfe von ECMA-Script auf einen bestimmten XML-Dialekt zuschneidet.

Im letzten Monat ging es um die nützliche XMLBeans-Bibliothek, welche die Arbeit mit XML in Java um einiges erleichtert. Manchmal möchte man seine Anwendungen noch um Scripting-Funktionen erweitern, aber XML ist eine der am kniffligsten auszudrückenden Dinge in Scripting-Sprachen. Häufig landet man dann am Ende doch bei den zugrunde liegenden Java XML APIs. Doch diese können einem nicht immer die „reichhaltigen, dynamischen Ausdrucksmöglichkeiten“ bieten, wie man sie eigentlich von seiner Scriptsprache erwartet.

Genau an diesem Punkt kommt E4X ins Spiel, ECMA-Script for XML, eine von BEA entwickelte Erweiterung der Javascript-Sprache (in der formalen standardisierten Form als ECMA-Script bekannt). Javascript erlebt derzeit so etwas wie eine Renaissance dank der AJAX-Technologie, welche auf Javascript zum Hinzufügen dynamischer Elemente zu Webseiten zurückgreift. E4X erweitert ECMA-Script, indem es XML zu einem nativen Typ innerhalb der Sprache macht, wodurch man damit so einfach arbeiten kann, wie mit anderen nativen Typen.

Noch wichtiger aber ist, dass E4X-Funktionen bereits in der Javascript-Engine von Mozilla (Rhino) implementiert sind, und zwar mithilfe der XMLBeans-Bibliothek. Rhino wiederum ist Bestandteil der Referenzimplementierung von JSR 223 (Scripting for Java Platform), welche wiederum Bestandteil von Java 6 ist (Codename „Mustang“), das sich derzeit in der Entwicklungsphase befindet (Neugierige können schon einmal einen Blick auf die Development Snapshots werfen).

Themenseiten: Anwendungsentwicklung, Software, XML

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu XML-Scripting mit E4X

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *